Phase compensation in a time of flight system

ABSTRACT

Systems and methods are provided for imaging a surface via time of flight measurement. An illumination system includes an illumination driver and an illumination source and is configured to project modulated electromagnetic radiation to a point on a surface of interest. A sensor system includes a sensor driver and is configured to receive and demodulate electromagnetic radiation reflected from the surface of interest. A temperature sensor is configured to provide a measured temperature representing a temperature at one of the illumination driver and the sensor driver and located at a position remote from the one of the illumination driver and the sensor driver. A compensation component is configured to calculate a phase offset between the illumination system and the sensor system from at least the measured temperature and a model representing transient heat flow within the system.

RELATED APPLICATIONS

This continuation application claims priority to U.S. patent applicationSer. No. 14/642,289, filed Mar. 9, 2015, which application claimspriority to Indian provisional patent application No. 1200/CHE/2014,filed 10 Mar. 2014, both applications of which are incorporated hereinin their entirety.

TECHNICAL FIELD

This application relates generally to imaging systems, and morespecifically, to phase compensation in a time of flight system.

BACKGROUND

A time-of-flight camera (ToF camera) is a range imaging camera systemthat resolves distance based on the known speed of light, measuring thetime-of-flight of a light signal between the camera and the subject foreach point of the image. A time-of-flight camera generally includes anillumination unit that illuminates the subject with light modulated withfrequencies up to 100 MHz. The illumination unit normally uses infraredlight to make the illumination unobtrusive. A lens can be used to gatherthe reflected light and images the environment onto an image sensor,with an optical band-pass filter passing only the light with the samewavelength as the illumination unit. This helps suppress non-pertinentlight and reduce noise. At the image sensor, each pixel measures thetime the light has taken to travel from the illumination unit to theobject and back to the sensor. From this time, a distance to the subjectat that point can be determined.

SUMMARY

In accordance with one example, a time of flight system is provided. Anillumination system includes an illumination driver and an illuminationsource and is configured to project modulated electromagnetic radiationto a point on a surface of interest. A sensor system includes a sensordriver and is configured to receive and demodulate electromagneticradiation reflected from the surface of interest. A temperature sensoris configured to provide a measured temperature representing atemperature at one of the illumination driver and the sensor driver andlocated at a position remote from the one of the illumination driver andthe sensor driver. A compensation component is configured to calculate aphase offset between the illumination system and the sensor system fromat least the measured temperature and a model representing transientheat flow within the system.

In accordance with another example, a method is provided for determininga distance to a surface of interest with a time of flight system.Modulated electromagnetic radiation is projected on a point on thesurface of interest via an illumination system. Electromagneticradiation reflected from the point on the surface of interest isreceived at a sensor system. The received electromagnetic radiation isdemodulated at the sensor system. A temperature is measured at aposition remote from respective drivers associated with each of theillumination system and the sensor system. A phase offset between theillumination system and the sensor system is calculated from at leastthe measured temperature and a model representing transient heat flowwithin the system. A location of the point on the surface of interest,relative to the time of flight system, is determined from the receivedelectromagnetic radiation and the calculated phase offset.

In accordance with yet another example, a time of flight system isprovided. An illumination system includes an illumination driver and anillumination source is configured to project modulated electromagneticradiation to a point on a surface of interest. A sensor system includesa sensor driver and is configured to receive and demodulateelectromagnetic radiation reflected from the surface of interest. Atemperature sensor is configured to provide a measured temperaturerepresenting a temperature at one of the illumination driver and thesensor driver and located at a position remote from the one of theillumination driver and the sensor driver. A compensation component isconfigured to calculate a numerical representation of the timederivative of the measured temperature for at least one time as well asa phase offset between the illumination system and the sensor system.The phase offset is calculated from at least the measured temperature,the calculated time derivative of the measured temperature, and a modelrepresenting transient heat flow within the system. A time of flightcalculation component is configured to determine a distance to the pointof the surface of interest from the demodulated electromagneticradiation and the phase offset.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, objects, and advantages of the hybrid qubit assembly willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings, wherein:

FIG. 1 illustrates an example of a time of flight system;

FIG. 2 illustrates an example model of a circuit containing a sensordriver and an illumination driver;

FIG. 3 illustrates a chart of calibration data obtained for calculatinga static coefficient, K;

FIG. 4 illustrates a chart of calibration data obtained for determininga time constant, τ_(s), associated with a photosensor;

FIG. 5 illustrates a chart of calibration data obtained for determininga time constant, τ₁, associated with a temperature sensor;

FIG. 6 illustrates a chart of a modeled phase offset for an example timeof flight system and a measured phase offset;

FIG. 7 illustrates an example method for determining a distance to asurface of interest; and

FIG. 8 is a schematic block diagram illustrating an exemplary system ofhardware components capable of implementing examples of the systems andmethods disclosed in FIGS. 1-7.

DETAILED DESCRIPTION

Described herein are systems and methods for maintaining an accuratephase offset in a time of flight imaging system. In a time of flightsystem, both the illumination unit and the image sensor have to becontrolled by high-speed signals, provided by associated driverelectronics, and synchronized with high accuracy to maintain to obtain ahigh resolution. For example, if the signals between the illuminationunit and the sensor shift by only ten picoseconds, the measured distancechanges by one and a half millimeters. At these levels of precision,changes in the temperature of the system components can affect thistiming sufficiently to introduce significant inaccuracies. A correctionfor any differences in timing between the illumination unit and theimage sensor, referred to as a phase offset, can be obtained via acalibration process for a range of expected temperatures.

It can be difficult to directly measure the temperature at the driverelectronics, as there will be a finite distance between the driver andthe sensor. Accordingly, in the systems described herein, it is assumedthat the temperature information used for correction is provided from alocation spatially remote from the drivers. When the system has beenoperating for some length of time, the temperature is relativelyconstant across the circuitry, and the remote measurement can be reliedupon for calculating the phase offset. During a transition in thetemperature of these components, as might occur during initiation of thesystem or when the power provided to the illumination is changed, thetemperature at the remote location could vary significantly andnonlinearly from the temperature at the driver. As a result, a systemrelying solely on the measured temperature can experience significantinaccuracies in the phase offset and the corresponding measurement untila steady state temperature is reached.

FIG. 1 illustrates an example of a time of flight system 10. The system10 includes an illumination system 12 having an associated illuminationdriver 14 and an illumination source 15. The illumination system 12 isconfigured to project electromagnetic radiation, modulated by theillumination driver 14, to a point on a surface of interest. In oneexample, the illumination source 15 can provide infrared light. Afterreflecting from the surface of interest, the light is received at asensor 20, configured to receive and demodulate electromagneticradiation reflected from the surface of interest. To this end, thesensor 20 includes a sensor driver 22 to demodulate the receivedelectromagnetic radiation and provide the demodulated signal to a timeof flight (TOF) calculation component 24. From the time of flight, adistance to the point of the surface of interest can be determined. Forexample, a difference in the phase of the transmitted signal and thedemodulated signal can be determined. From this system, a depth mappingof a region of interest within the surface can be obtained.

Each of the illumination driver 14 and the sensor driver 22 can beprovided with a timing reference from a common timing generator 11,although it will be appreciated that small differences in the providedreference can be introduced via differences in the path lengths betweenthe drivers and the timing generator. The accuracy of the time of flightcalculation can be affected by any difference in the timing of theillumination system 12 and the sensor 20, and more specifically bydifferences in the timing their respective drivers 14 and 22.Accordingly, a phase offset between the illumination driver 14 and thesensor driver 22 can be provided to the time of flight calculationcomponent 24 from a compensation component 26 to account for anydifferences in timing. The phase offset is sensitive to a dietemperature of the circuit board or boards containing the illuminationdriver 14 and the sensor driver 22. When the system 10 has reached asteady state temperature, the phase offset tends to stabilize to astandard value. During transitions, such as starting the system orchanging the power of the illumination system 12, the offset value canvary significantly. It will be appreciated that it is undesirable toutilize the standard correction for the system during these times.

In the illustrated system 10, a direct measurement of the temperature atthe illumination driver 14 or the sensor driver 22 is not available.Instead, one or more temperature sensors 28, each located remote fromeach of the illumination driver 14 or the sensor driver 22 but on a samecircuit board as one of the drivers 14 and 22, each provide a measuredtemperature to the compensation component 26. From the measuredtemperature or temperatures and a transient heat flow model of thesystem 10, the phase offset can be corrected during transitions,maintaining an accurate time of flight measurement. In oneimplementation, the transient heat flow model can be a specific instanceof a parameterized general model, with a set of parameters for aparticular system configuration being determined via curve fitting ofthe results of a reference circuit board to the general model.

The illustrated system 10 takes into account the transient variation oftemperatures rather than just the instantaneous values to calibrate thephase offset, providing faster convergence of the measured value ofphase to the correct value. Current time of flight systems sometimestake several minutes to give stable value of phase as the thermal timeconstants are quite long. The illustrated system converges to thecorrect phase offset in only a few seconds, allowing the system toremain useful when the power provided to the illumination system 12 isaltered or the temperature at the drivers 14 and 22 is otherwisechanged.

FIG. 2 illustrates an example model of a circuit 50 containing a sensordriver 52 and an illumination driver 54. It will be appreciated that,while the model is shown as having the sensor driver, the illuminationdriver, and two temperature sensors, 56 and 58, on a single board, inother implementations, the two drivers and their respective remotetemperature sensors can be located on two separate boards. Further,while the offset will depend on the temperature at each of thephotosensor driver 52 and the illumination driver 54, for the sake ofsimplicity of explanation, the following model will focus on the effectof the temperature at the sensor driver on the phase offset. It will beappreciated, however, that the following analysis can be extended in asimilar manner to determine the effect of the temperature at theillumination driver 54 on the phase offset. In such a case, the modelwould likely include additional measured temperatures for at least thesecond temperate sensor 58, as well as additional parameters, such asthermal time constants for the second temperature sensor 58 and theillumination driver 54. Further, in this specific example, it will beassumed that the sensor associated with the sensor driver 52 isdetecting one of infrared, ultraviolet, or visible light. Accordingly,this sensor will be referred to as the “photosensor” to distinguish itfrom the temperature sensors 56 and 58.

The inventors have determined that, for the illustrated system 50 andsimilarly configured systems, the relationship between the phase offsetand the temperature at the photosensor driver 52 is substantiallylinear. Specifically, the phase offset due to the temperature at thephotosensor driver 52 at a given time, t, can be expressed as:P ₀(t)=K(T _(S)(t)−T _(SC))  Eq. 1

where P₀ is the phase offset, T_(S), is the photosensor temperature,T_(SC) is the temperature for which the phase offset is calibrated to bezero, and K is a constant static coefficient determined for the system.

The temperature of the photosensor driver will vary from an initialtemperature, T_(S0), to a final stable temperature, T_(SF), in anessentially exponential fashion, such that:T _(S)(t)T _(SF)+(T _(S0) −T _(SF))e ^(−t/τ) ^(S)   Eq. 2

where τ_(S) is a thermal time constant, measured for each system,associated with the temperature change at the photosensor.

From Eqs. 1 and 2, the change in the phase offset over time can beexpressed, in terms of the photosensor temperature, as:P ₀(t)=K(T _(SF) T _(S0) −T _(SF)]e ^(−t/τ) ^(S) −T _(SC))  Eq. 3

The measured temperature, T₁, and the photosensor temperature, are alsogenerally linearly related. In the illustrated system 50, however,during transitions, the presence of the capacitors C_(P) and C_(S)introduce nonlinearities into the relationship between the measuredtemperature and the temperature at the photosensor. Accordingly, whilethe measured temperature varies exponentially with time, it may due sowith a different thermal time constant, τ₁, such that:T ₁(t)=T _(1F)+(T ₁₀ −T _(1F))e ^(−t/τ) ¹   Eq. 4

where T₁₀ is an initial temperature at the temperature sensor, T_(1F) isa final stable temperature, τ₁ is a thermal time constant, measured foreach system, associated with the temperature change at the temperaturesensor.

From Eq. 4, we can determine a time derivative of the temperature at thetemperature sensor as:

$\begin{matrix}{\frac{d\left( T_{1} \right)}{dt} = {{- \left( {T_{10} - T_{1F}} \right)}\frac{e^{{- t}/T_{1}}}{\tau_{1}}}} & {{Eq}.\mspace{11mu} 5}\end{matrix}$

Since the temperature at the photosensor and the temperature at thetemperature sensor are linearly related outside of temperaturetransients, Eq. 3 can be rewritten as:P ₀(t)=K(T _(1F) T ₁₀ −T _(1F)]e ^(−t/τ) ^(S) −T _(1C))  Eq. 6

where T_(1C) is the temperature for which the phase offset is calibratedto be zero.

Using Eq. 5, Eq. 6 can be rewritten as:

$\begin{matrix}{{P_{0}(t)} = {K\left( {T_{1F} - T_{1C} + {\tau_{1}\frac{d\left( T_{1} \right)}{dt}e^{- {({\frac{1}{\tau_{S}} - \frac{t}{\tau_{1}}})}}}} \right)}} & {{Eq}.\mspace{11mu} 7}\end{matrix}$

It will be appreciated that the time derivative of the measuredtemperature can be determined numerically from the measured temperaturedata. In many systems, it can be assumed that the time constants for thetemperature at the photosensor driver 52 and the temperature sensor 56are reasonably similar in value, such the term

$\left( {\frac{1}{\tau_{S}} - \frac{t}{\tau_{1}}} \right)$is sufficiently close to zero to allow the exponential term to belinearly approximated near zero as

$1 - {\left( {\frac{1}{\tau_{S}} - \frac{t}{\tau_{1}}} \right).}$Accordingly, the model of Eq. 7 can be approximated as:

$\begin{matrix}{{P_{0}(t)} = {K\left( {T_{1F} - T_{1C} + {\tau_{1}\frac{d\left( T_{1} \right)}{dt}\left( \left\lbrack {1 - {t\left( {\frac{1}{\tau_{S}} - \frac{t}{\tau_{1}}} \right)}} \right\rbrack \right)}} \right)}} & {{Eq}.\mspace{11mu} 8}\end{matrix}$

In other systems, it can be assumed that the time constants for thetemperature at the photosensor driver 52 and the temperature sensor 56are substantially similar in value, such that such the term

$\left( {\frac{1}{\tau_{S}} - \frac{t}{\tau_{1}}} \right)$is sufficiently close to zero to allow the exponential term to beignored. In this case, the model of Eq. 7 can be approximated as:

$\begin{matrix}{{P_{0}(t)} = {K\left( {T_{1F} - T_{1C} + {\tau_{1}\frac{d\left( T_{1} \right)}{dt}}} \right)}} & {{Eq}.\mspace{11mu} 9}\end{matrix}$

It will be appreciated that the time constants, τ₁ and τ_(s), as well asthe constant K will differ among systems. To this end, FIGS. 3-6graphically illustrate the determination of these parameters. In theseexamples, each parameter is determined via a curve fitting procedureapplied to one of the models of Eqs. 7-9 for data collected from areference system. It will be appreciate that, for systems different fromthat of FIG. 2 that additional or different parameters may be usedwithin the general model.

FIG. 3 illustrates a chart 80 of calibration data obtained forcalculating the static coefficient, K. The horizontal axis 82 representsa difference between a measured temperature at the temperature sensorand a calibrated temperature for which the phase offset is calibrated tobe zero. The vertical axis 84 represents the change in the phase offsetdue to temperature. The phase is measured as a digital value for which4096 units is equal to a full period (e.g., 2π radians). As can be seenfrom the chart 80, the plotted curve 86 is substantially linear. Thestatic coefficient, K, can be determined as the slope of this curve or aline fitted to the curve, when the linear relationship is insufficientto extract a slope from the curve. Accordingly, the static coefficientrepresents an expected amount of change in the phase offset associatedwith a given deviation of the measured temperature from the calibrationvalue when the temperature of the system is at a steady state, that is,not in transition.

FIG. 4 illustrates a chart 100 of calibration data obtained fordetermining the time constant, τ_(s), of the temperature at thephotosensor. The vertical axis 102 represents the phase offset,represented as a digital value for which 4096 units is equal to a fullperiod (e.g., 2π radians). The horizontal axis 104 represents time,measured in seconds. Each dataset 106-111 represents data taken from thereference system at a specific temperature, specifically twenty-twodegrees Celsius 106, twenty-four degrees Celsius 107, twenty-sevendegrees Celsius 108, thirty degrees Celsius 109, thirty-three degreesCelsius 110, and thirty-five degrees Celsius 111. For each dataset106-111, an exponential curve, T_(S)(t)=T_(SF)+(T_(S0)−T_(SF))e^(−t/τ)^(S) , can be fitted to the dataset to obtain a time constant associatedwith the represented temperature. In the illustrated implementation, thetime constant is substantially equal across temperatures, and the samevalue can be used across a temperature range of interest.

FIG. 5 illustrates a chart 120 of calibration data obtained fordetermining the time constant, τ₁, of the temperature at the temperaturesensor. The vertical axis 122 represents the measured temperature inCelsius. The horizontal axis 124 represents time, measured in seconds.Each dataset 126-131 represents data taken from the reference system ata specific temperature, specifically twenty-two degrees Celsius 126,twenty-four degrees Celsius 127, twenty-seven degrees Celsius 128,thirty degrees Celsius 129, thirty-three degrees Celsius 130, andthirty-five degrees Celsius 131. For each dataset 126-131, anexponential curve, T₁(t)=T_(1F)+(T₁₀−T_(1F))e^(−t/τ) ¹ , can be fittedto the dataset to obtain a time constant associated with the representedtemperature. In the illustrated implementation, the time constant issubstantially equal across temperatures, and the same value can be usedacross a temperature range of interest.

FIG. 6 illustrates a chart 140 of a modeled phase offset 142 for anexample time of flight system 142 and a measured phase offset 144. Thevertical axis 146 represents the phase offset, represented as a digitalvalue for which 4096 units is equal to a full period (e.g., 2π radians).The horizontal axis 148 represents time, measured in seconds. It can beseen from the chart 140 that the predicted value tracks closely with themeasured value even during an initial transition 150, allowing for anincrease in the accuracy of the time of flight calculation.

In view of the foregoing structural and functional features describedabove, methods in accordance with various aspects of the presentinvention will be better appreciated with reference to FIG. 7. While,for purposes of simplicity of explanation, the method of FIG. 7 is shownand described as executing serially, it is to be understood andappreciated that the present invention is not limited by the illustratedorder, as some aspects could, in accordance with the present invention,occur in different orders and/or concurrently with other aspects fromthat shown and described herein. Moreover, not all illustrated featuresmay be required to implement a method in accordance with an aspect thepresent invention.

FIG. 7 illustrates an example of a method 170 for determining a distanceto a surface of interest with a time of flight system. At 172, modulatedelectromagnetic radiation is projected to a point on the surface ofinterest via an illumination system. In one implementation, infraredlight modulated to include a series of higher intensity pulses anddirected at the surface of interest. At 174, electromagnetic radiationreflected from the point on the surface of interest is received at asensor system. At 176, the received electromagnetic radiation isdemodulated at the sensor system. At 178, a temperature is measured at aposition remote from respective drivers associated with each of theillumination system and the sensor system. By “remote from,” it is meantthat there is a sufficient spatial separation that a temperature changeat a driver will not be instantaneously measured at the temperaturesensor. For example, a temperature sensor located on a same circuitboard as one or both of the sensor driver and the illumination driver,but spatially removed from both components, can be used to measure thetemperature.

At 180, a phase offset between the illumination system and the sensorsystem is calculated from at least the measured temperature and a modelrepresenting transient heat flow within the system. In oneimplementation, the model can include a time derivative of the measuredtemperature, such that calculating the phase offset includes calculatinga numerical derivative of the measured temperature for at least onetime. Depending on the specifics of the system, the model can includeone or more of a nonlinear function of a time since a transition intemperature has begun, a product of the time derivative of the measuredtemperature and a linear term representing the time since the transitionbegan, and a linear combination the time derivative of the measuredtemperature, a final stable temperature at the temperature sensor aftertransition in temperature, and a calibration temperature for thetemperature sensor at which the phase offset is expected to be zero.

It will be appreciated that a given model can be parameterized for ageneral class of systems. To this end, the method can include anadditional step of determining a plurality of system parameters for themodel from a reference system via a curve fitting analysis. (not shown).In one implementation, the plurality of system parameters can include acalibration temperature for the measured temperature at which the phaseoffset is expected to be zero, a thermal time constant associated withthe driver associated with the sensor system, a thermal time constantassociated with the driver associated with the illumination system, athermal time constant associated with the driver associated with eachtemperature sensor, and a static coefficient representing an expectedamount of change in the phase offset associated with a given deviationof the measured temperature from the calibration value when thetemperature of the system is not in transition. At 182, a location ofthe point on the surface of interest, relative to the time of flightsystem, is determined from the received electromagnetic radiation andthe calculated phase offset.

It will be appreciated that the method, including 172, 174, 176, 178,180, and 182, can be iteratively repeated to provide locations ofmultiple locations on the surface of interest. It will be appreciatedthat the calculated phase offset at 180 can be refined over time toreflective changes in temperature as the time of flight system isoperating. In one implementation, measured temperatures from 178 can beretained across iterations and utilized to provide a more accuratecalculation of the phase offset at 180. For example, multipletemperature readings over time can be used to calculate a numericalderivative as part of the phase offset calculation.

FIG. 8 is a schematic block diagram illustrating an exemplary system 200of hardware components capable of implementing examples of the systemsand methods disclosed in FIGS. 1-7, such as time of flight compensationcomponent 24 and the compensation component 26. The system 200 caninclude various systems and subsystems. The system 200 can be a personalcomputer, a laptop computer, a workstation, a computer system, anappliance, a “smart” phone, an application-specific integrated circuit(ASIC), a server, a server blade center, a server farm, etc.

The system 200 can includes a system bus 202, a processing unit 204, asystem memory 206, memory devices 208 and 210, a communication interface212 (e.g., a network interface), a communication link 214, a display 216(e.g., a video screen), and an input device 218 (e.g., a keyboard and/ora mouse). The system bus 202 can be in communication with the processingunit 204 and the system memory 206. The additional memory devices 208and 210, such as a hard disk drive, server, stand-alone database, orother non-volatile memory, can also be in communication with the systembus 202. The system bus 202 interconnects the processing unit 204, thememory devices 206-210, the communication interface 212, the display216, and the input device 218. In some examples, the system bus 202 alsointerconnects an additional port (not shown), such as a universal serialbus (USB) port.

The processing unit 204 can be a computing device and can include anapplication-specific integrated circuit (ASIC). The processing unit 204executes a set of instructions to implement the operations of examplesdisclosed herein. The processing unit can include a processing core.

The additional memory devices 206, 208 and 210 can store data, programs,instructions, database queries in text or compiled form, and any otherinformation that can be needed to operate a computer. The memories 206,208 and 210 can be implemented as computer-readable media (integrated orremovable) such as a memory card, disk drive, compact disk (CD), orserver accessible over a network. In certain examples, the memories 206,208 and 210 can comprise text, images, video, and/or audio, portions ofwhich can be available in formats comprehensible to human beings.

Additionally or alternatively, the system 200 can access an externaldata source or query source through the communication interface 212,which can communicate with the system bus 202 and the communication link214.

In operation, the system 200 can be used to implement one or more partsof a time of flight measurement system. Computer executable logic forimplementing the system control 126 resides on one or more of the systemmemory 206, and the memory devices 208, 210 in accordance with certainexamples. The processing unit 204 executes one or more computerexecutable instructions originating from the system memory 206 and thememory devices 208 and 210. The term “computer readable medium” as usedherein refers to a medium that participates in providing instructions tothe processing unit 204 for execution, and can include either a singlemedium or multiple non-transitory media operatively connected to theprocessing unit 204.

The invention has been disclosed illustratively. Accordingly, theterminology employed throughout the disclosure should be read in anexemplary rather than a limiting manner. Although minor modifications ofthe invention will occur to those well versed in the art, it shall beunderstood that what is intended to be circumscribed within the scope ofthe patent warranted hereon are all such embodiments that reasonablyfall within the scope of the advancement to the art hereby contributed.

Having described the invention, we claim:
 1. A method for determining adistance to a surface of interest with a time of flight system,comprising: projecting modulated electromagnetic radiation to a point onthe surface of interest via an illumination system; receivingelectromagnetic radiation reflected from the point on the surface ofinterest at a sensor system; demodulating the received electromagneticradiation at the sensor system; measuring a temperature at a positionremote from respective drivers associated with each of the illuminationsystem and the sensor system; calculating a phase offset between theillumination system and the sensor system from at least the measuredtemperature and a model representing transient heat flow within thesystem; and determining a location of the point on the surface ofinterest, relative to the time of flight system, from the receivedelectromagnetic radiation and the calculated phase offset; whereincalculating the phase offset comprises calculating a numericalrepresentation of the time derivative of the measured temperature for atleast one time.
 2. A method for determining a distance to a surface ofinterest with a time of flight system, comprising: projecting modulatedelectromagnetic radiation to a point on the surface of interest via anillumination system; receiving electromagnetic radiation reflected fromthe point on the surface of interest at a sensor system; demodulatingthe received electromagnetic radiation at the sensor system; measuring atemperature at a position remote from respective drivers associated witheach of the illumination system and the sensor system; calculating aphase offset between the illumination system and the sensor system fromat least the measured temperature and a model representing transientheat flow within the system; and determining a location of the point onthe surface of interest, relative to the time of flight system, from thereceived electromagnetic radiation and the calculated phase offset;wherein the method is iteratively repeated across a plurality ofiterations, and calculating a phase offset between the illuminationsystem and the sensor system comprises calculated the phase offset fromat least the measured temperature, a measured temperature from aprevious iteration of the method, and a model representing transientheat flow within the system.
 3. A method for determining a distance to asurface of interest with a time of flight system, comprising: projectingmodulated electromagnetic radiation to a point on the surface ofinterest via an illumination system; receiving electromagnetic radiationreflected from the point on the surface of interest at a sensor system;demodulating the received electromagnetic radiation at the sensorsystem; measuring a temperature at a position remote from respectivedrivers associated with each of the illumination system and the sensorsystem; calculating a phase offset between the illumination system andthe sensor system from at least the measured temperature and a modelrepresenting transient heat flow within the system; and determining alocation of the point on the surface of interest, relative to the timeof flight system, from the received electromagnetic radiation and thecalculated phase offset; further comprising determining a plurality ofsystem parameters for the model from a reference system via a curvefitting analysis.
 4. The method of claim 3, wherein measuring thetemperature comprises measuring the temperature at a temperature sensorlocated on a circuit with the sensor system, but remote from the driverassociated with the sensor system, the plurality of system parameterscomprising a thermal time constant associated with the temperaturesensor.
 5. The method of claim 3, the plurality of system parameterscomprising one of a thermal time constant associated with the driverassociated with the sensor system and a calibration temperature for themeasured temperature at which the phase offset is expected to be zero.6. The method of claim 5, the plurality of system parameters comprisinga static coefficient representing an expected amount of change in thephase offset associated with a given deviation of the measuredtemperature from the calibration value when the temperature of thesystem is not in transition.